home *** CD-ROM | disk | FTP | other *** search
/ CD ROM Paradise Collection 4 / CD ROM Paradise Collection 4 1995 Nov.iso / science / sm32a.zip / LIBRARY / DATAPLOT.LI < prev    next >
Text File  |  1994-12-22  |  1KB  |  26 lines

  1. #  library dataplot.li
  2. #  dataplot() 
  3. #  plots data ( [x1,x2,...], [y1,y2,...] ) on xy-plane
  4. #  dataplot( [x1,x2,...], [y1,y2,...], xmin, xmax, ymin,ymax, link) 
  5. #  plots a set of data with the linked dots if link=1,
  6. #  by default, link=0.
  7. #  e.g.    dataplot([1,2,3], [1,4,9])
  8.  
  9. dataplot(x_, y_, xmin_, xmax_, ymin_, ymax_, link_) := block(numeric:=on,
  10.     dx:=(xmax-xmin)/getmaxx,
  11.     dy:=(ymax-ymin)/getmaxy,
  12.     length:=length(y),
  13.     axis(xmin,xmax,ymin,ymax),
  14.     do( circle((member(x,j)-xmin)/dx,getmaxy-(member(y,j)-ymin)/dy,2),
  15.     j,1,length,1),
  16.     setcolor(colorno(yellow)),
  17.     moveto((member(x,1)-xmin)/dx,getmaxy-(member(y,1)-ymin)/dy),
  18.     if(link,do( lineto((member(x,j)-xmin)/dx,getmaxy-(member(y,j)-ymin)/dy),
  19.     j,1,length,1)),
  20.     numeric:=off,
  21.     readchar,
  22.     local(dx,dy,length))
  23. dataplot(x_,y_,xmin_,xmax_,ymin_,ymax_) := dataplot(x,y,xmin,xmax,ymin,ymax,0)
  24. dataplot(x_,y_,xmin_,xmax_) := dataplot(x,y,xmin,xmax,min(y)*0.9,max(y)*1.05,0)
  25. dataplot(x_,y_) := dataplot(x,y,min(x)*0.9,max(x)*1.05,min(y)*0.9,max(y)*1.05,0)
  26.